home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Magazine / Morphos / GCC / lib / gcc-lib / ppc-amigaos / 2.95.1 / sys-include / powerup / ppcpragmas / bullet_pragmas.h < prev    next >
C/C++ Source or Header  |  2000-03-13  |  4KB  |  136 lines

  1. /* Automatically generated header! Do not edit! */
  2.  
  3. #ifndef _PPCPRAGMA_BULLET_H
  4. #define _PPCPRAGMA_BULLET_H
  5. #ifdef __GNUC__
  6. #ifndef _PPCINLINE__BULLET_H
  7. #include <powerup/ppcinline/bullet.h>
  8. #endif
  9. #else
  10.  
  11. #ifndef POWERUP_PPCLIB_INTERFACE_H
  12. #include <powerup/ppclib/interface.h>
  13. #endif
  14.  
  15. #ifndef POWERUP_GCCLIB_PROTOS_H
  16. #include <powerup/gcclib/powerup_protos.h>
  17. #endif
  18.  
  19. #ifndef NO_PPCINLINE_STDARG
  20. #define NO_PPCINLINE_STDARG
  21. #endif/* SAS C PPC inlines */
  22.  
  23. #ifndef BULLET_BASE_NAME
  24. #define BULLET_BASE_NAME BulletBase
  25. #endif /* !BULLET_BASE_NAME */
  26.  
  27. #define    CloseEngine(glyphEngine)    _CloseEngine(BULLET_BASE_NAME, glyphEngine)
  28.  
  29. static __inline void
  30. _CloseEngine(void *BulletBase, struct GlyphEngine *glyphEngine)
  31. {
  32. struct Caos    MyCaos;
  33.     MyCaos.M68kCacheMode    =    IF_CACHEFLUSHALL;
  34. //    MyCaos.M68kStart    =    NULL;
  35. //    MyCaos.M68kSize        =    0;
  36.     MyCaos.PPCCacheMode    =    IF_CACHEFLUSHALL;
  37. //    MyCaos.PPCStart        =    NULL;
  38. //    MyCaos.PPCSize        =    0;
  39.     MyCaos.a0        =(ULONG) glyphEngine;
  40.     MyCaos.caos_Un.Offset    =    (-36);
  41.     MyCaos.a6        =(ULONG) BulletBase;    
  42.     PPCCallOS(&MyCaos);
  43. }
  44.  
  45. #define    ObtainInfoA(glyphEngine, tagList)    _ObtainInfoA(BULLET_BASE_NAME, glyphEngine, tagList)
  46.  
  47. static __inline ULONG
  48. _ObtainInfoA(void *BulletBase, struct GlyphEngine *glyphEngine, struct TagItem *tagList)
  49. {
  50. struct Caos    MyCaos;
  51.     MyCaos.M68kCacheMode    =    IF_CACHEFLUSHALL;
  52. //    MyCaos.M68kStart    =    NULL;
  53. //    MyCaos.M68kSize        =    0;
  54.     MyCaos.PPCCacheMode    =    IF_CACHEFLUSHALL;
  55. //    MyCaos.PPCStart        =    NULL;
  56. //    MyCaos.PPCSize        =    0;
  57.     MyCaos.a0        =(ULONG) glyphEngine;
  58.     MyCaos.a1        =(ULONG) tagList;
  59.     MyCaos.caos_Un.Offset    =    (-48);
  60.     MyCaos.a6        =(ULONG) BulletBase;    
  61.     return((ULONG)PPCCallOS(&MyCaos));
  62. }
  63.  
  64. #ifndef NO_PPCINLINE_STDARG
  65. #define ObtainInfo(a0, tags...) \
  66.     ({ULONG _tags[] = { tags }; ObtainInfoA((a0), (struct TagItem *)_tags);})
  67. #endif /* !NO_PPCINLINE_STDARG */
  68.  
  69. #define    OpenEngine()    _OpenEngine(BULLET_BASE_NAME)
  70.  
  71. static __inline struct GlyphEngine *
  72. _OpenEngine(void *BulletBase)
  73. {
  74. struct Caos    MyCaos;
  75.     MyCaos.M68kCacheMode    =    IF_CACHEFLUSHALL;
  76. //    MyCaos.M68kStart    =    NULL;
  77. //    MyCaos.M68kSize        =    0;
  78.     MyCaos.PPCCacheMode    =    IF_CACHEFLUSHALL;
  79. //    MyCaos.PPCStart        =    NULL;
  80. //    MyCaos.PPCSize        =    0;
  81.     MyCaos.caos_Un.Offset    =    (-30);
  82.     MyCaos.a6        =(ULONG) BulletBase;    
  83.     return((struct GlyphEngine *)PPCCallOS(&MyCaos));
  84. }
  85.  
  86. #define    ReleaseInfoA(glyphEngine, tagList)    _ReleaseInfoA(BULLET_BASE_NAME, glyphEngine, tagList)
  87.  
  88. static __inline ULONG
  89. _ReleaseInfoA(void *BulletBase, struct GlyphEngine *glyphEngine, struct TagItem *tagList)
  90. {
  91. struct Caos    MyCaos;
  92.     MyCaos.M68kCacheMode    =    IF_CACHEFLUSHALL;
  93. //    MyCaos.M68kStart    =    NULL;
  94. //    MyCaos.M68kSize        =    0;
  95.     MyCaos.PPCCacheMode    =    IF_CACHEFLUSHALL;
  96. //    MyCaos.PPCStart        =    NULL;
  97. //    MyCaos.PPCSize        =    0;
  98.     MyCaos.a0        =(ULONG) glyphEngine;
  99.     MyCaos.a1        =(ULONG) tagList;
  100.     MyCaos.caos_Un.Offset    =    (-54);
  101.     MyCaos.a6        =(ULONG) BulletBase;    
  102.     return((ULONG)PPCCallOS(&MyCaos));
  103. }
  104.  
  105. #ifndef NO_PPCINLINE_STDARG
  106. #define ReleaseInfo(a0, tags...) \
  107.     ({ULONG _tags[] = { tags }; ReleaseInfoA((a0), (struct TagItem *)_tags);})
  108. #endif /* !NO_PPCINLINE_STDARG */
  109.  
  110. #define    SetInfoA(glyphEngine, tagList)    _SetInfoA(BULLET_BASE_NAME, glyphEngine, tagList)
  111.  
  112. static __inline ULONG
  113. _SetInfoA(void *BulletBase, struct GlyphEngine *glyphEngine, struct TagItem *tagList)
  114. {
  115. struct Caos    MyCaos;
  116.     MyCaos.M68kCacheMode    =    IF_CACHEFLUSHALL;
  117. //    MyCaos.M68kStart    =    NULL;
  118. //    MyCaos.M68kSize        =    0;
  119.     MyCaos.PPCCacheMode    =    IF_CACHEFLUSHALL;
  120. //    MyCaos.PPCStart        =    NULL;
  121. //    MyCaos.PPCSize        =    0;
  122.     MyCaos.a0        =(ULONG) glyphEngine;
  123.     MyCaos.a1        =(ULONG) tagList;
  124.     MyCaos.caos_Un.Offset    =    (-42);
  125.     MyCaos.a6        =(ULONG) BulletBase;    
  126.     return((ULONG)PPCCallOS(&MyCaos));
  127. }
  128.  
  129. #ifndef NO_PPCINLINE_STDARG
  130. #define SetInfo(a0, tags...) \
  131.     ({ULONG _tags[] = { tags }; SetInfoA((a0), (struct TagItem *)_tags);})
  132. #endif /* !NO_PPCINLINE_STDARG */
  133.  
  134. #endif /* SASC Pragmas */
  135. #endif /* !_PPCPRAGMA_BULLET_H */
  136.